一套很酷的代码运行多端项目,能适应不同环境的跨端整体解决方案!
推荐关注
责编:猿哥 | 来源:GitHub猿 整理
上次是谁要的系统啊,猿哥帮你找到了。
📚 项目介绍
今天给大家推荐一个非常棒的开源项目,这个开源项目可以做到一套代码运行多端,一端所见即多端所见。
这个开源项目有一个非常形象的名字,叫:Chameleon/kəˈmiːlɪən/,简写 CML
,中文名卡梅龙
;中文意思变色龙
,意味着就像变色龙一样能适应不同环境的跨端整体解决方案。
CML 支持的平台包括:web、微信小程序、支付宝小程序、百度小程序、android(weex)、ios(weex)、qq 小程序、字节跳动小程序、快应用、持续更新中
一端所见即多端所见 —— 多端高度一致,无需关注各端文档,基于多态协议不影响各端差异化灵活性。
设计理念:
软件架构设计里面最基础的概念 “拆分” 和 “合并”,拆分的意义是 “分而治之”,将复杂问题拆分成单一问题解决,比如后端业务系统的” 微服务化 “设计;“合并” 的意义是将同样的业务需求抽象收敛到一块,达成高效率高质量的目的,例如后端业务系统中的 “中台服务” 设计。
而 CML 属于后者,通过定义统一的语言框架 + 统一多态协议,从多端(对应多个独立服务)业务中抽离出自成体系、连续性强、可维护强的 “前端中台服务”。
虽然各端环境千变万化,但万变不离其宗的是 MVVM 架构思想,CML 目标是让 MVVM 跨端环境大统一。
CML 提供了丰富的内置组件和扩展组件来抹平多端差异。开发者可通过组合这些组件,创建出强大的应用程序。
内置的有 button switch radio checkbox 等组件,扩展的有 c-picker c-dialog c-loading 等等,覆盖了开发工作中常用的组件。
同时为了方便高效开发,CML 也提供了丰富的 API 库,发布为 npm 包 chameleon-api,里面包括了网络请求、数据存储、地理位置、系统信息、动画等方法。
这个开源框架还有自己的官网,提供了各种详细的文档,API 和教程,大家可以去研究研究,非常好。
项目源码,怎么领取?
扫码下方二维码,后台回复【多端】即可获取所有系统
在 GitHub猿 还有更多优质项目系统学习资源,欢迎分享给其他同学吧!
猿哥个人微信
添加猿哥个人微信即送一份惊喜大礼包
→ 技术资料共享
→ 技术交流社群
最近,GitHub猿建了一个「GitHub猿交流群」,欢迎大家一起交流优秀开源项目,也可以宣传自己的开源项目,在 「GitHub猿」公众号后台回复【加群】邀请你入群。